[comp.unix.microport] Quadram Quadport AT and Microport System V/AT 2.4

phil@bcscal.UUCP (Phil Kemp) (02/08/89)

About two weeks ago I posted a request to the Net about Microport
SysV/AT 2.4 and the Quadram Quadport AT.  I received a few responses,
some in a similar vein to mine, a couple suggesting solutions. 

Here in summary is what I found out.

The tty driver for Microport SysV/AT 2.4 will upon receiving a tty
interrupt, read all port addresses to which the interrupt refers.  This
is important since the Quadram documentation seems to imply that the
device driver should query the Interrupt Request Port and then read only
the indentified port address. The way the UNIX driver is written will
not in Quadram's opinion cause any problems with the board. The ttypatch
utility provided with SysV/AT can be used to set up the necessary
address references.

>From: Luis Soltero <ubc-cs!uunet!rice.edu!luis>

writes:

>i am running the quad port/at on my 386 under uPort 3.0e.  i know that this
>is a totally diffrent os.  anyway here is a shell script that i use to install
>all 6 of my serial ports.  one thing to note is that
>the serial port adresses MUST be specified in dec.  the quad port manual 
>specifies them in hex..

>i hope this helps.

>--luis@titan.rice.edu

>#!/bin/csh
>set port = 7		# i start my ports at /dev/tty07
>foreach i ( 648 664 680 696 712 )
>	/etc/ttypatch -t$port -i3 -a$i -n1
>	@ port++
>end

This script will define the kernel relationship between the interrupt, 
 -i3 for interrupt 3 ( DOS COM2: ), the port device number ( -t$port )
and the addresses, specified in the for loop.

This works just fine from the UNIX side of things. However the Quadport
can not be hardware jumpered to reflect the choice of interrupt. This must be
done via software selection. 

The simplest way to do this is to use the outb.c utility, supplied with
the 2.3 and 2.4 systems, ( it and inb.c are in /src )( Thanks very much
Ken! ) .  Once compiled you can use outb to set the interrupt with
something like:

cc outb.c
a.out 2d3 1

which writes Hex 1 ( Bit one set ) to port address 2d3.

Reference: Quadport Operations manual page 23.  This assumes JP6 on the
Motherboard in position 2-3, which implies that the addresses are set to:

Port    Hex address 	Dec address
----    ----------- 	-----------
1	280-287 	640
2	290-297		656
3	2a0-2a7		672
4	2b0-2b7		688
5	2c0-2c7		704

Luis' script would look something like

>#!/bin/csh
>set port = 1		# i start my ports at /dev/tty1
>foreach i ( 640 656 672 688 704 )
>	/etc/ttypatch -t$port -i3 -a$i -n1
>	@ port++
>end

Then issue the 'a.out 2d3 1' to set the interrupt and bingo! It should work.
(It does on my ancient IBM AT ( original stock and very slow 6MHz )
I have been using this setup for about a week with no problems to this point.

I have an entry in /etc/rc2 which issues the interrupt selection whenever
I'm in run mode 2:
....

#
# Initialize the Quadram Quadport AT to use interrupt 3
#
/usr/local/bin/outb 2d3 1

.......

A couple of things:

Thanks must go out to both Quadram ( phone calls to Georgia are
expensive! ) and to Ken Chapin of Microport.

Quadram were very helpful in describing the hardware capabilities to a
novice hardware tinkerer. 

I must say that I have had experiences similar to other folks' on the Net
with respect to Microport and their support.  However, I am extremely
pleased with the support I have been given by Ken, John Plocher, and
John Sully.  They have been responsive, patient, and have treated me as
I try to treat my customers, with respect.  During their recent move I
was very pleased with the response of their reception staff and the
efforts they made to keep the phone calls coming in.  

Flame on ? ( well sort of )

From time to time however I have been assisted, if I could stretch the
meaning of the word, by other individuals in Microport's tech. 
assistance group.  These experiences have been expensive, ( no 800
access in Canada ) and frustrating.  Unfortunately an organization's
reputation is based on the overall impressions left.  A few bad
experiences negate many good ones. 

Flame off....  

Well I hope that helps any one who is trying to set up the Quadport.
Thank's to all who responded to my original request.




-- 
Phil Kemp
Boeing Computer Services, Calgary
Voice - (403)-269-8281
phil@bcscal.uucp