At least for what would be a typical hobby
configuration for a KL based
system, Tops-20 doesn't care how specific you get, NI-0 and NI-0-0
basically getting you the same thing, viz:
NCP>show liNE ni-0 13:53:29 NCP Request # 1104; Show Line
Summary Completed Line = NI-0 State = On NCP>show line ni-0-0
13:53:37 NCP Request # 1105; Show Line Summary Completed Line =
NI-0-0 State = On NCP>
I think what would really be necessary to know would be to have access
to a connected (PDP-11 based) DN20 (running MCB), which is where actual
DDCMP lines would be found. The DTE interface on KLH10 does not
simulate this, but I think some work may have been done as a Chaosnet
implementation appears to be simulating what MIT did, repurpose a DN20
with special code, the Ethernet adapter being in the DN20.
What I recall is that you needed the final /-x/ for lines or controllers
that could handle multiple lines. I believe a KMC would do that, but I
honestly don't remember.
The source for Tops-20/Tops-10 Phase IV NICE is written in BLISS, so I
don't know how finicky it would be about what's in the string.
I keep daydreaming about taking the Phase II NICE, which I do have, and
updating it for Phase IV. This would be a lot of work, so I haven't
really looked into the matter. If I did, then I would use full COMND%
parsing to get recognition on the line types, DMR, NI, CI, KMC, Etc.
That might be a fantasy as I would imagine these were never standardized.
In that case, I could parse for either a dash or underscore as a
separator in the event of talking to a Phase II node. If I had
awareness of what was running, then the parse options can be changed on
the fly. I do this all over the place in other programs and it's really
nice to have a program tell you what it's expecting based on the actual
environment instead of what's possible.
For example, for the executor node, I could issue a SHOW KNOWN LINES and
parse that for the line type prefixes and have awareness for that node,
allowing escape recognition.
I do think being able to wildcard and match lines like what RSX does
would be a fine feature. Another thing that makes me want to rollup my
sleeves and dive into a NICE rewrite.
------------------------------------------------------------------------
On 4/11/23 1:51 PM, Paul Koning wrote:
On Apr 11, 2023, at 11:14 AM, Johnny
Billquist<bqt(a)softjar.se> wrote:
On 2023-04-11 16:42, Paul Koning wrote:
> On Apr 11, 2023, at 10:31 AM, Johnny
Billquist<bqt(a)softjar.se> wrote:
> ...
> They are in the form dev-#, dev-#-# or dev-#-#.#. All which signifythings, and parts
can be wildcarded.
Indeed, for any given implementation there are patterns and they arefollowed
semi-consistently across implementations. But the architecturespec has no rules other
than that circuit and line names are "id-string". The only place I see the
dev-# type format mentioned isn't for the names but rather for the value of line
attribute "device".
Well, controllers like ethernet usually are in the
form dev-#. They don't have multiple lines in the way a serial controller do.
Also, even when an implementation follows the RSX
pattern, the actual names used may vary. For example, async DDCMP on RSTS uses circuit
names of the form TT-# no matter what controller type is involved.
Oh. I was
definitely not trying to imply that there are any specific names used on the dev part.
That is clearly a string that might be whatever. It might possibly have some length limit,
and I don't think anything but letters are allowed. But that's about it.
The network management architecture spec says:
" ...id-string
consists of one to sixteen characters from the set of upper-case
alphabetics, numerics, period and hyphen. An id-string must contain
at least one alphabetic character."
Most names, including circuit, line, and module names are "id-string".
It gets
worse when you consider Phase II, where circuit names contain underscores rather than
hyphens. So for an application that reads circuit and node info from other
implementations, the rule I would suggest isto assume nothing about the structure of
circuit names.
Underscores might be an interesting thing to investigate. But
I'm notgoing down that rabbit hole right now.
Phase II NICE has two different
encodings for line names: ASCII stringwhich seems to be pretty much unconstrained, and a
compact coded form consisting of a device code, controller number, and optional line
number. TOPS-20 only implements the latter, it seems. And the text representation shown
for that second form is dev_# for line 0, dev_#_# for non-zero line numbers. There is a
short list of defined device codes, so if a node wants to tell TOPS-20 that it has a line
named ETH-0, it can't do that.
paul
_______________________________________________
HECnet mailing list --hecnet(a)lists.dfupdate.se
To unsubscribe send an email tohecnet-leave(a)lists.dfupdate.se
_______________________________________________
HECnet mailing list -- hecnet(a)lists.dfupdate.se
To unsubscribe send an email to hecnet-leave(a)lists.dfupdate.se