I have a question that nobody seems to be able to answer (in Amsterdam):
I've a fast IBM-AT and a midi-keyboard. I would like to hook the two
together, but I don't want to buy a >150$ interface card.
As MIDI is just a serial interface, it should be possible to use the
serial interface from the AT as a MIDI port.
Question: Is that possible? How? And most important: Is there any software
that supports such a low-budget interface?
= Using the serial port (RS232) won't do it!
MIDI operates at a baud rate higher than your serial port could go.
To use your serial port would require an interface between your PC and
MIDI devices. This interface would need a large buffer to hold data while
your PC reads data at its maximum 'snails' pace of 19.2k baud.
MIDI operates around 36k baud (If I recall) and the interface device
would not work nearly as well as an internal bus I/F card!
Get the interface card!! It'll be well worth it!!
Colin
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
| Colin Dente | JANET: EC...@UK.AC.MAN.EE.V1 |
| Dept. of Electrical Engineering | ARPA: ECAD%UK.AC.M...@UKACRL.BITNET|
| University of Manchester | UUCP: ...!mcvax!ukc!man.cs.ux!s2!dente |
| England | |
|-----------------------------------------------------------------------------|
| Anybody want to buy a Starfighter?..... Buy an acre of ground, and wait... |
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Unfortunately, the clock timer in the AT is set up to generate
standard baud rates due to the system clock used. It's not that the AT
cannot handle the data rate, it's just it cannot generate it.
Just bite the bullet and buy an MPU-401 compatible board.
Then you can run other people's software.
--
Brian Wilson || {uunet,sun,well}!island!bwilson (707) 523-4465 ||
|| Island Graphics Corporation Santa Rosa, Ca. ||
Tiny little nitpick: The serial controller on a PC (8250 UART) can handle
rates up to 115.2 kbps., which is substantially faster than MIDI. Although
I must still agree, get a MIDI adapter. It's too much effort to try and do
all the encoding/decoding necessary to use an RS232 serial port.
Thank you and happy hunting! Internet: fa...@pawl.rpi.edu
____ [> SB <] fargo@{paraguay|uruguay}.acm.rpi.edu
/__ -=>??<=- Bitnet (??): user...@rpitsmts.bitnet
/ ARGO : 3000 years of regression from the year 4990
If you're looking for a MIDI card, I'd recommend the Music Quest card. I
went through a frustrating experience getting MIDI up on my XT-compatible.
The Roland card uses IRQ2, which is also used by the EGA card. Since I
origionally wanted to run Personal Composer, I also needed the EGA. Other
than the Music Quest card, which can use IRQ2, 3, 4, 7, other cards all appear
to use IRQ2. In checking into IRQ use, I came away with the impression that
IRQ2 is the standard IRQ for EGA cards. Thus, the "standard" established
by Roland conflicts with the standard (?) established by IBM in designing the
XT. Most MIDI software also is hard-coded to IRQ2, so even with the Music
Quest card, you still have a conflict. I finally opted for Cakewalk (with
which I as quite satisfied) and Copyist II for score printing (with which I
am satisfied; but, the software is not at the professional level of Cakewalk).
Bill Gieske
alux2!wg
Two reasons you can't do it without external hardware:
1. MIDI is serial, but it is a current loop, NOT RS232.
2. MIDI baud rate is 31.5K, I believe.
You need RS232 - current loop conversion hardware and a buffer. That shouldn't
be too difficult to design. I think it would take less than 1/2 hr.
Also, I don't believe that any software supports the serial port because
of these facts. You will have to either design the hardware for MIDI or
buy the card. That's about all there is to it.
:wq
s
==============================================================================
= Jason Bold Rich, Inc. "Under the influence of a fantastic amount =
= bold@richp1 Franklin Park, IL of trendy chemical amusement aid" - FZ =
==============================================================================
I can't just sit here and listen to all this and not comment.
I, too, have very recently become interested in MIDI, and just as an
inexpensive way to get something, ANYTHING, to work, here is what I did.
I went to the local discount department store and bought a Casio MT-240.
This has a sub sized keyboard, rythm generator, and 30 instrument selection.
one of the instruments is Percussion, and then each key hit is a different
percussin instrument (snare, hi hat, tympany, etc..)
It also has MIDI IN and MIDI OUT.
Not too bad for $89.00.
Now, I don't play keyboard, so the sub-sized keys don't bother me too much,
and MIDI doesn't care about whether there even are keys or not!
Now I needed a MIDI port for my PC (actually a Sperry PC - HT, an XT clone).
I found that I would need to spend almost twice as much for a MIDI card as
I spent for my Casio! This was not acceptable, so here is how to get around
the problem.
First, I program for a living, and the problem of getting available software
for my interface did not bother me. If you want to be able to run Cakewalk
buy an MPU-401 or whatever they are called compatable card. If you just
want to play around yourself, or limit yourself to the commercially available
Songwrite program, the following will work just fine.
MIDI runs at 31.25 Kbaud, 8 data, 1 stop, No parity.
Standard COM ports use either a 1.8432 MHz or 18.432 MHz crystal. Neither of
these works to be divided down to 31.25 Kbaud.
Whichever crystal is used, the clock running into the 8250 UART is 1.8432MHz.
I used COM2 for my purposes. I currently use only MIDI out from my PC to use
it as a sequencer.
What you need to do, then, is the following hardware modification:
Get the following components (this is all from memory, No Flames!)
1 female DIN connector for your MIDI output.
2 100 - 150 ohm resistors
1 dpdt switch (spst if MIDI out only)
1 2.000MHz crystal oscillator 2MHz divides down to 31.25K very nicely.
misc wire and electrical tape, solder, etc...
1) Find the UART chip for the COM port. (40 pin, 8250 or 16450, usually)
2) Find the circuit board trace running to pin 16. This is th clock line.
3) Wire up the 5volts and ground from somewhere on the board to the oscillator.
4) Cut the trace from #2 above.
5) Run a wire from pin 16 to the common pole of the switch.
6) Run a wire from the other side of the cut trace to one side of the switch.
7) Run a wire from the Osc output to the other side of the switch.
Now the switch will allow std baud rates in one position, and
MIDI baud rate in the other. I hate destroying existing functionality!
8) o
this one -- o o ---this one
o o
I can't remember the pin number scheme used on DIN connectors, but use the
two shown above for step 8 which is, Solder one side of one of the
resistors to one of pins, and solder one side of the other resistor
to the other pin.
9) Run a wire from one of the resistor ends to ground on the board.
10) Run the other to the UART data out. Actually mine goes to the
output of a 74125 buffer which is fed by the UART chip. A buffer
stage here is a good idea, if you can provide it.
11) It DOES matter which of the two MIDI lines in 8 & 9 above
are placed where, but I don't have it in front of me to check.
If it does not work, try swapping them.
The hardware is quite simple, and a lot of people already have a COM port
to use. The MIDI in would require another DIN, a 5milliampere opto isolator
a couple more resistors, and the other half of the DPDT switch ( to
switch RxData In to the UART from the RS-232 recievers).
Now all you need to sequence out from your PC is software.
--
Ron Burns
Unisys Corporation UUCP: ...!amdahl!ems!minnow!ron
Phone:(612)635-6927 CSNET: r...@minnow.SP.Unisys.Com
i use their stuff because my laptop doesn't have a standard card slot.
here's their address, etc:
key electronic enterprises
9112 hwy 80 w., suite 212
fort worth, tx 76116
order number 1-800-kee-midi
info 817-560-1912
have fun,
-geo
---
George D. Hadden, Honeywell Systems and Research Center
PHONE: (612)782-7769
MAIL: 3660 Technology Drive MN65-2100, Minneapolis, MN 55418
ARPA: had...@src.honeywell.com
UUCP: {umn-cs, ems, bthpyd}!srcsip!hadden
>Although I must still agree, get a MIDI adapter.
>It's too much effort to try and do
>all the encoding/decoding necessary to use an RS232 serial port.
You COULD change the crystal on the serial adapter board to a 2MHz
crystal; which can be counted down to MIDI. But then, all
your MIDI would be a do-it-yourself project:
- No other MIDI interface looks like this, so you get
to write all the software you want to use.
- The BIOS doesn't work well at high speeds, so you
get to write it all at the hardware level.
- Your interface doesn't have a built-in timer, so you
get to do all the time-stamping in software (sure to
be a drag on your real-time).
+---------------------------------------------------------------+
| Dave Tutelman |
| Physical - AT&T Bell Labs - Lincroft, NJ |
| Logical - ...att!mtunb!dmt |
| Audible - (201) 576 2442 |
+---------------------------------------------------------------+
We are not (yet) using MIDI for musical applications, but for interactive
audio applications where the best/cheapest computer controlled audio
hardware is MIDI. We purchased 10 MIDIC's, though only four are currently
in use (awaiting other hardware and some yet-to-be-written software). It
only took a few hours to get my Sun talking to a Yamaha DMP11 mixer! I am
quite happy with the product and service Hinton has provided me.
MIDIC's are in use at other computer science research organizations (Xerox
EuroPARC, Xerox PARC, Stanford) since they have the same problems as us:
wanting to run MIDI devices from a range of Unix systems.
The only drawbacks are that it is somewhat expensive, and it comes from
overseas. The current price is #300 (that is 300 English pounds, around
$550). The version we have has 16K of RAM, though they do make a 32K
battery backed up version as well (primarily for dumping all your
instrument configurations into).
Hinton Instruments
Oldford
Nr. Frome
Sommerset
BA11 2NN
England
Tel: +44 373 51927
Fax: +44 373 830679
Barry.
Barry Arons phone: +1 415-496-6264
Olivetti Research Center fax: +1 415-496-6219
2882 Sand Hill Road, Suite 210 internet: ar...@orc.olivetti.com
Menlo Park, CA 94025 uucp: {sri-unix|oliveb}!orc!arons
I am currently running Personal Composer on an XT-compatible with an EGA card
and Voyetra OP-4001 Intelligent Midi Interface with no problems. My EGA card
implements a mouse bus port on IRQ2 which I have disabled to prevent conflict
with the MIDI card. I use a serial mouse, instead. Which MIDI card you
should purchase depends on what you wish to do with it and the features of the
machine you're putting it in. The Roland MPU-401 unit is easily programmable
but tends to be extremely flaky on machines faster than 8MHz. I purchased the
Voyetra OP-4001 because it is 100% compatible to the MPU-401 (it uses the
Roland chip), because the interface and processor are all on the card, and
it is extremely versatile for programming purposes. My machine is running at
10MHz with no problems, and I know the Voyetra card functions flawlessly at
25MHz. Since you're dealing with an AT machine, this could be a significant
feature.
--
______|\____________________________________________________________________ ______|/______ Hank E Vail _____ he...@mcnc.org _____________________________ ____,/|__________ Microelectronics Center __________ (919) 248-1996 wk _____ ___/_/|^
Ed
Peter Langston (p...@bellcore.com) has written a MPU401 driver for
various Suns (multibus, vmebus, ATbus (IRQ4)) and has a whole lot of
support software for it. You can probably get the driver by mailing him
a request. The support software is available via anonymous ftp at
ucsd.edu.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Never put off until tomorrow what you can avoid altogether.
Steve Tynor
Georgia Tech Research Institute
ty...@gitpyr.gatech.edu
That's a clever trick, as the RS232 standard is only valid for data rates
up to 19.2Kbaud. 1/2 :-) Serial != RS232.
--
"When you're down, it's a long way up
When you're up, it's a long way down
It's all the same thing
And it's no new tale to tell" ../ray\..
Perhaps I didn't make myself clear (God knows - even I don't understand me
sometimes!) - what I meant (and recent discussions seem to have proved me
correct) was that I might be possible to get the PC's serial port to talk
at 31.5(?)Kbaud (it turns out that it'd need a hardware mod - but it is
possible). I never proposed that it would be acting as an RS232 interface,
merely as a couple of wires capable of eating/spitting out bits at the
required rate - you would then require hardware to convert the current loop
signal of MIDI to something the PC would like (and doesn't MIDI specify that
everything should be opto-isolated?).
OK?
Assuming the serial port chip on the AT clone could be clocked at
that speed and the AT could keep up with short bursts (up to about
256 characters) at that rate, the interface would be fairly simple.
Knowing what I don't about the PC/AT buss architecture and standard
comm ports, I suspect that it would be more cost effective to get
the Roland MPU-401 style interface or some other MIDI buss card.
--
_____________________________________________________________________________
Daniel A. Glasser One of those things that goes
uwvax!per2!dag "BUMP!!!(ouch)" in the night.
---Persoft, Inc.---------465 Science Drive-------Madison, WI 53711-----------
This is how I made a cheap MIDI-interface for my AT :
1. I bought a cheap RS232-card with two RS-ports on it, one of which
was left without IC-circuits ( to be inserted later ).
2. I changed the 1.8432 MHz crystal to a 2.0000 MHz crystal.
3. There were places for circuits 75188 and 75189 ( gates that do the
conversion between TTL levels (0-5V) and RS232 levels (-9-+9V).
Instead of these circuits I put there two ordinary TTL-gate circuits,
number 7400. Result: the interface operates at TTL levels, which is
quite close to MIDI (actually, MIDI is a current loop but who cares).
Of course the 8250 circuit had to be added too.
4. I connected two 5-pin DIN connectors to the 9-pin D-connector according
to following table:
9-pin MIDI in MIDI out
---------------------------------------
2 (RxD) ----------- 4
3 (TxD) ----------------------- 4
5 (GND) ----------- 5
5 (GND) ----------------------- 5
This interface does not follow the MIDI specification but it is cheap
and it works (at least with Yamaha instruments).
This interface operates like a normal serial port, so commercial software
won't work without modifications to the program.
- Petri Mikkila -
- Helsinki University of Technology -