"Brian L. Stuart" <blstuart at bellsouth.net> wrote:
> There
was/is a definitive schema for in which order vectors
> should be assigned, but it is more or less not used since
> all the OSes that atleast I have tried actually probe what
> vector each card uses, and use that vector instead of having
> some fixed scheme.
> All that is required is that no two devices use the same
> vector, because that would be bad.
This is coming from 25 year old memories, but I seem
to recall there being some that didn't. Back in college
we had an 11/34 that we ran RSTS, RT-11 and 6th edition
UNIX on. IIRC we had to follow the scheme exactly for
all three to work. For one system, I seem to remember
telling it the addresses and it found the vectors. On
another, we told it the vectors and it found the addresses.
On the third, we told it both. We found this out when
we didn't follow the scheme for a 3rd party serial card,
and any deviation would break one or the other.
The scheme as such is never needed for any of them.
You need to decide somehow on how you want to assign CSRs, and then you
need to set those switches or jumpers accordingly on each card.
When you build, generate, or set up the system, you need to tell the
system exactly which devices you have, and at which CSRs. For some
systems, there is a program that can autoprobe and tell you what you
have, but you don't have to use that, and once the configuration is
done, you don't have to do it again. When the system boots, it uses the
information that has been configured into the system previously.
So, following DECs scheme can help you, but it is not neccesary to
follow it.
And for all systems, the CSR *must* be told somehow. Either you can let
some auto-detection system do it if you follow the DEC scheme, or you
have some config that sets it up.
As far as I know, in RT-11 you have a SYSGEN that collects this, and
then builds the device drivers with that information. (I think it can do
a scan of the system according to the DEC scheme if you want it to.)
RSTS/E also use a SYSGEN phase if I remember correctly, but my memory is
a bit vague.
I've never used Unix 6th ed., but in 2.11BSD you have a config file,
which tells both the CSR and the vector. 2.11BSD does not have a
mechanism for autodetecting the vector, unless my memory fails me,
In RSX, you give all this information in the SYSGEN phase, but you can
get default values to be suggested from running the autoconfig program
that exist.
But having just the vector and not the CSR isn't going to allow you to
detect the CSR. From the CSR you can trick out the vector (and for some
controllers even program the vector), but the other way just isn't possible.
Johnny
--
Johnny Billquist || "I'm on a bus
|| on a psychedelic trip
email: bqt at softjar.se || Reading murder books
pdp is alive! || tryin' to stay hip" - B. Idol