COM3 & COM4 on XENIX 2.3.2

Alan H. Mintz alan at mq.com
Thu Oct 25 12:56:43 AEST 1990


In article <15 at dhump.lakesys.COM>, mort at dhump.lakesys.COM (Marty Wiedmeyer) writes:
...
> SCO sez that COM3 & 4 aren't supported as serial devices. If you want
> more than 2 terminals/modems, you have to have a multi port card.
> 
> But, he said that he remembers that some have done it! And that he'd
> "seen it on the net".

I saw it too. I saved it. Ordinarily I would mail this, but there have
been a number of recent requests. Here it is (edited):


From: karl at robot.uucp (Karl-P. Huestegge)
Newsgroups: comp.unix.xenix.sco
Message-ID: <1990Sep22.025355.8768 at robot.uucp>
Organization: K.-P. Huestegge, Sytemanalyse und Beratung, Berlin
Posted: Sat Sep 22 03:53:55 1990

All you have to do is:

   1. Configure the Hardware:
        COM1: Adress x3f8   IRQ 4
        COM2: Adress x2f8   IRQ 3
        COM3: Adress x3e8   IRQ 5
        COM4: Adress x2e8   IRQ 9 (PC-AT) = IRQ 2 (PC-XT)

   2. Edit the Files
	/usr/sys/conf/master
>/usr/sys/io/sioconf.c

   3. Relink your kernel.
    
   4. Make the nodes /dev/tty3[aA] /dev/tty4[aA]

That's all.

Explained more detailed:

1. Configuring the Hardware:

   COM1 and COM2 Ports are standard - no problem.
   I took a 2 port standard serial card.

   For COM3 and COM4 I took another card of the same type
   and jumpered the 'alternate' adresses x3e8 for the 
   1st port (which will become COM3) and x2e8 for the 
   2nd port of this card (becomes COM4).

   Now the only problem is to get two free Interrupts.
   I took IRQ 5 for COM3 (no more second lineprinter)
   and IRQ 9 for COM4 (free in most systems).

	[ Stuff about how to modify hardware for IRQ2/9 deleted. I'll mail ]
	[ if necessary	Ed.]

2. Configuring the kernel:
 
*  Edit the file /usr/sys/io/sioconf.c and append two new entries
   for COM3 and COM4:
   board # 2(3), enum-type IBM_BOARD, no of ports 1, int-vec 5(25),
   minor dev 4(12), port adress 3e8(2e8), int poll adr offs 0, port inc 0,
   8250-int control 8(=MCRBIT3) 

   {2,IBM_BOARD,  1,5,4,  (sd)0x3e8,0,     0,MCRBIT3}, /*ibm COM3*/
   {3,IBM_BOARD,  1,25,12,(sd)0x2e8,0,     0,MCRBIT3}, /*ibm COM4*/
                    ^^
                    for all slave-PIC interrupts you have to add
                    octal '30':  1+30=31(octal) == 25(dec)
                                      -----------------
*  Edit /usr/sys/conf/master:                        vv
      line 'sio': replace int-vect '33 and 34' with '31 and 5'.
      line 'pa' : delete interrupt entry 5 and set vsiz=1.
      line 'ex' : delete interrupt entry 31 and set vsiz=0.

3. Recompile the kernel with 'make' and copy the new kernel to /.
[ Clearer: cd /usr/sys/conf ; ./link_xenix ; ./hdinstall        Ed.]

4. Make the tty nodes

      mknod /dev/tty3a c 5 4
      mknod /dev/tty3A c 5 132
      mknod /dev/tty4a c 5 12
      mknod /dev/tty4A c 5 140

5. Reboot and enjoy.

Karl-Peter Huestegge                       karl at robot.UUCP
Niedstr. 19                                (karl at netmbx.UUCP)
1 Berlin Friedenau                         ..tmpmbx!einoed!utopia!robot!karl
+49 (0)30-851 81 98



-- 
< Alan H. Mintz             | Voice +1 714 980 1034       >
< Micro-Quick Systems, Inc. | FAX   +1 714 944 3995       >
< 10384 Hillside Road       | uucp:     ...!uunet!mq!alan >
< Alta Loma, CA  91701 USA  | Internet: alan at MQ.COM       >



More information about the Comp.unix.sysv386 mailing list