[comp.unix.xenix] SCO XENIX 2.3.2 won't support 2 disc controllers??

bill@twg.wimsey.bc.ca (Bill Irwin) (08/18/90)

I  was  just advised by someone in our organization that SCO XENIX  2.3.2
will  not support two hard disc controllers simultaneously.  Does  anyone
have  any experience that would confirm or negate this?  On the  surface,
it appears like a severe restriction.
-- 
Bill Irwin    -   TWG The Westrheim Group     -    Vancouver, BC, Canada
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
uunet!van-bc!twg!bill     (604) 431-9600 (voice) |     UNIX Systems
bill@twg.wimsey.bc.ca     (604) 431-4629 (fax)   |     Integration

gson@niksula.hut.fi (08/19/90)

In article <243@twg.wimsey.bc.ca> bill@twg.wimsey.bc.ca (Bill Irwin) writes:
> I was just advised by someone in our organization that SCO XENIX 2.3.2
> will not support two hard disc controllers simultaneously.  Does anyone
> have any experience that would confirm or negate this?  

Negate.  SCO Xenix 2.3.2 (at least the 386 version) does support two
disk controllers (ST506, don't know about SCSI), but the support seems
mostly undocumented.  Someone posted instructions for configuring the
secondary driver a year or two ago, anyone still have them?

Another problem is that most controllers don't have jumpers for
changing the I/O address and interrupt line.  This can usually be
overcome with some cutting and soldering.

Additionally, the secondary controller may not be reset properly at
boot time because the BIOS doesn't know about multiple controllers.
You may need to write a small device driver that resets the controller
and recalibrates the disk before it is mounted.
-- 
Andreas Gustafsson
Internet: gson@niksula.hut.fi
Voice: +358 0 563 5592

strike@clmqt.marquette.Mi.US (Tim Bowser) (08/19/90)

bill@twg.wimsey.bc.ca (Bill Irwin) writes:

>I  was  just advised by someone in our organization that SCO XENIX  2.3.2
>will  not support two hard disc controllers simultaneously.  Does  anyone
>have  any experience that would confirm or negate this?  On the  surface,
>it appears like a severe restriction.

Bogus data there.  The GT system will support at least two controllers.  My
current system has the capability of running a SCSI host adaptor and a MFM
hard drive, if I so choose.

Does anyone answer questions here, or just ask them in vain?  I've posted
about six Xenix related questions, and if there was the capability of
getting dust in the /usr/spool/mail directory, it would be undisturbed from
'Net mail.


-- 
 Tim Bowser  ("Strikemaster")  |  Standard  |  mailrus!sharkey!clmqt!strike
Enterprise Information System  | Disclaimer |  strike@clmqt.marquette.Mi.US
      Marquette, Mi. USA       |    Here    |     Voice:(906)-346-6735
=> UNIX: The Adventure Begins... To vi, or not to vi, that is the question. <=

chip@chinacat.Unicom.COM (Chip Rosenthal) (08/20/90)

In article <1990Aug19.152005.13105@clmqt.marquette.Mi.US>
	strike@clmqt.marquette.Mi.US (Tim Bowser) writes:
>Does anyone answer questions here, or just ask them in vain?

Yes, we answer questions.

See.

-- 
Chip Rosenthal                            |  You aren't some icon carved out
chip@chinacat.Unicom.COM                  |  of soap, sent down here to clean
Unicom Systems Development, 512-482-8260  |  up my reputation.  -John Hiatt

raj@darkside.com (Roger Lee) (08/22/90)

chip@chinacat.Unicom.COM (Chip Rosenthal) writes:

> In article <1990Aug19.152005.13105@clmqt.marquette.Mi.US>
> 	strike@clmqt.marquette.Mi.US (Tim Bowser) writes:
> >Does anyone answer questions here, or just ask them in vain?
> 
> Yes, we answer questions.
> 
> See.
> 
> -- 
> Chip Rosenthal                            |  You aren't some icon carved out
> chip@chinacat.Unicom.COM                  |  of soap, sent down here to clean
> Unicom Systems Development, 512-482-8260  |  up my reputation.  -John Hiatt

ask a silly question.....

clifford@marob.masa.com (Robert Clifford) (08/23/90)

On 19 Aug 90 13:18:27 GMT, gson@niksula.hut.fi said:

  > In article <243@twg.wimsey.bc.ca> bill@twg.wimsey.bc.ca (Bill Irwin) writes:
> I was just advised by someone in our organization that SCO XENIX 2.3.2
> will not support two hard disc controllers simultaneously.  Does anyone
> have any experience that would confirm or negate this?  

  > Negate.  SCO Xenix 2.3.2 (at least the 386 version) does support two
  > disk controllers (ST506, don't know about SCSI), but the support seems
  > mostly undocumented.  Someone posted instructions for configuring the
  > secondary driver a year or two ago, anyone still have them?

Yes.  We are running 2 MFM controllers with 4 disks under sco 2.3.2,
thanks to Dave Dillabough's article:

Path: marob!phri!rutgers!psuvax1!wuarchive!cs.utexas.edu!uunet!van-bc!dilltk!dave
From: dave@dilltk.UUCP (Dave Dillabough)
Newsgroups: comp.unix.xenix
Subject: Adding a 2nd Hard Disk Controller.
Keywords: 4 Drives under SCO 2.3x
Message-ID: <178@dilltk.UUCP>
Date: 22 Sep 89 06:52:38 GMT
Organization: Dilltech Systems
Lines: 142



Hi All,

In response to various recent articles here is what I did to add a 2nd hard 
disk controller to SCO Xenix. I have had 4 drives working reliably on my
system for some months now.

This only works on SCO Xenix 2.3 and above, requires 1 small hardware 
mod (fairly simple) and works for all models of Western Digital
controllers that I have tried.



History

I too, noticed a reference in the 2.3 release notes  that gives the new
syntax for the mkdev hd command to add a second hard drive controller, but
try as I might I couldn't find any other info about the hardware setup neeeded.
I called SCO for a clarification and was told that the second controller needed
to be setup for  Address 170H and Interupt 15. Sounded pretty easy, but looking
at the info that I had on controller cards later revealed no way to reset the
interupt used by the card.  The address part was pretty easy as 170H is the 
secondary address of any controller card that I looked at. Assuming that maybe
the interupt changed when the address changed I tried installing a second
HD card with the address set to the secondary position. The system booted but
hung when mkdev hd was used to add the second controller. Phoning SCO back I
was told that the controller that they were using was made by Compac and had
a settable interupt but that it had not yet been tried due to lack of some 
cable or other. Pulling out the trusty old AT Tech reference manual at home
showed that interupt 14 (1st HD controller) and interupt 15 (2nd HD controller)
are pins D7 and D6 on the AT bus. An examination of these pins on various 
controllers showed that pin D6 is not conected to anything or is not even
included on the board. On a board that had the D6 pin cutting the trace to 
D7 and reconnecting it to D6 was all that it took to get the software to 
recognize the second controller. I have tried a variety of controller and 
drive combinations and they all seem to work fine. 

All of the controllers that I have  used are made by Western Digital and any 
combination of ST-506, RLL and ESDI buffered or unbuffered have worked OK. 
Systems used to do the tests in were 1) a 16 mhz NEC Powermate 386 and
2) a 25 mhz 386 clone (Twinhead motherboard, Phoenix BIOS) and A Televideo
Tele386. 


Gruesome Details

First you must do the interupt mod. Standard disclaimers apply for chopping and
hacking printed circuit boards. The pins in question can be located by looking
at the back (solder side) of the disk controller card. The gold edge conector 
fingers must all be present on the shorter of the 2 connectors (the one farthest
from the card mounting bracket. If there are any gaps in the gold fingers the
one that you need is probably not present (true on about half of the 
controllers that I have seen) but count out the pins be make sure. From the 
notch between the 2 sets of fingers count right 7 pin positions. This is pin D7
(interupt 14) that is used by the 1st controller. To the immediate left is pin
D6 (interupt 15) that is needed for the 2nd controller. Assuming that D6 is
present the trace that connects to D7 must be cut and then rerouted to D6. 
On most cards the fingers connect to a series of holes that are right
above them. These holes are the easiest point to solder to. To test out the
board jumper together D6 and D7 at these holes. Rather than cutting the trace 
to D7 initially you can test the system by covering the D7 finger with a piece
of tape. This will prevent the card from responding on interupt 14 while 
allowing interupt 15 to work. Since D8 - D15 are not used by the controller 
you can cover these pins without any problems. After verifying the operation
of the controller you can modify the board in a permanent manner. If you have
a board where the D6 finger is missing (blank between D2 and D7) you must find
another location to pick up this signal. Running a wire from the motherboard
to the card is probably the easiest way to do this. Most motherboards are 
laid out in such a manner that the holes for the short (front) connector is 
present at all slots regardless of whether or not the connector is installed 
or not. This is an easy place to attach a wire to pick up interupt 15. Relate
the holes on the board to the fingers on the card to find the needed one. You
should be able to solder a wire to this hole by removing the cards from the
motherboard while not having to remove the motherboard itself. This wire should
be soldered to the 2nd controller board to supply interupt 15. To do this 
follow the trace from pin D7 until it passes through the card and solder the
wire in this hole. Remember to cut the trace to disconnect D7 afterwards.

That's the hard part. Obviously it is easier (and much neater) to start with
a card with all of the fingers present but the other way does work if you can't
scare one up.



    |     This is the solder (back) side of the controller card
    |
    |   <<<----this is the  bracket that faces  the back of your computer
    |
    |
    |
    |
    |______                                        __                       ___
           | | | | | |   31 gold fingers total    |  | | | | | | | |       |
           |_|_|_|_|_|____________________________|  |_|_|_|_|_|_|_|_______|

                                                       ^         ^ ^
                                                      D1        D6 D7




Next you must reconfigure the card's jumpers. To do this you will need the
information that (hopefully) came with the card. What is needed is to
1) move the HD address from 178H (primary address) to 170H (secondary address).
    -this is usually 1 jumper.
2) if the second card has a floppy disk controller on it you must move this to
   a secondary address or disable it. (usually 1 jumper and a trace cut)
3) if the card has firmware in ROM (BIOS) it must be moved to a secondary 
address or disabled.

If the hard drive that you are going to use on this controller has not had a
primary format done, format it before proceeding as per instructions appropriate
to your machine. Now install the card in a 16 bit slot in the machine and cable
the hard drive to it. 

Boot xenix and while logged in as root type

mkdev hd 0 1

This specifies hard drive 0 (first one) on crontroller 1 (2nd one). Answer
the prompts as appropriate for your drive type. If you are not sure of what
you are doing review the manual on hard drive installation. The first drive
on the second controller is /dev/[r]hd4 while the second drive on this
controller is /dev/[r]hd5.

The installation of the hard drive from this point follows the same procedure
that was used to install the initial hard drive in your system. 

I had problems adding the 3rd hard disk as the ndisk kernel parameter  was
set to 2 (only enough room allocated for 2 hard drives). I changed ndisk to 4
and had no problem adding the 3rd and forth disks.
 
Have fun,

Dave Dillabough


-------------------------------------------------------------------------------
uunet!van-bc!dilltk!dave
ubc-cs!van-bc!dilltk!dave
-------------------------------------------------------------------------------


-- 
Robert Clifford, ESCC New York City
clifford@marob.masa.com uunet!hombre!clifford
{att,philabs,rutgers,cmcl2,hombre}!phri!marob!clifford