It's taken me over a month to put some data together, both tabulating
from various sources and observing what is actually going over the wire.
The basic problem was that some changes that I had previously made to
DAP, NFT, FAL and friends to write protect the code space /silently/
left things in such a fragile state that trying to link the relocatable
binaries (I.E., .REL files) into an NFT execute either outright blew
LINK up or hung it in an endless loop. That's right: Boom... I don't
think I've ever seen that.
Fixing LINK didn't seem to be obvious and I didn't want to get into pile
of code as I judged this to be a one to two year rabbit hole because it
would turn into a rewrite to use extended mode and support long symbols.
Briefly, the problem turned out to be that if you are using Read-Only
.PSECT's (a relatively late MACRO feature) in a GLXLIB program, you
/must/ name your code segment .HIGH. and your data area DATA. I got the
data part correct, but committed the unforgivable sin of naming the code
segment "CODE"... Go figure.
So MIM:: is sending an OS Type of 12, just like it's supposed to, and
Tops-20 doesn't recognize this. The recovery works well enough, it
seems, Tops-20 DAP merely whining, but carrying on. So I'll fix that.
It seems the best way to go is to simply mimic the RSX naming paradigm;
that is, RSX OS$XXX would go to .OSXXX.
I'm wondering whether I should double check the FILESYS byte. Probably.
RSX
Symbol RSX
Value RSX
OS Type DAP V5.6
Value DAP V5.6
OS Type Tops-20 DAP
Symbol Tops-20 DAP
Value Tops-20 DAP
OS Type
OS$RT 1 RT-11 1 RT-11 .OSRT 1 RT-11
OS$RST 2 RSTS 2 RSTS/E .OSRST 2 RSTS/E
OS$11S 3 RSX-11S 3 RSX-11S .OSRXS 3 RSX-11S
OS$11M 4 RSX-11M 4 RSX-11M .OSRXM 4 RSX-11M
OS$11D 5 RSX-11D 5 RSX-11D .OSRXD 5 RSX-11D
OS$IAS 6 IAS 6 IAS .OSIAS 6 IAS
OS$VMS 7 VAX/VMS 7 VAX/VMS .OSVAX 7 VAX/VMS
OS$T20 8 TOPS-20 8 TOPS-20 .OSTP20 8 TOPS-20
OS$T10 9 TOPS-10 9 TOPS-10 .OSTP10 9 TOPS-10
OS$RTS 10 RTS-8 10 RTS-8 .OSOS8 *10* *OS-8*
OS$OS8 11 OS-8 11 OS-8 .OSRXP *11* *RSX11-M+*
OS$MPL 12 RSX-11M+ 12 RSX-11M+
OS$COP 13 COPOS/11 13 COPOS/11
OS$POS 14 P/OS
OS$ELN 15 ELAN
OS$CPM 16 CP/M
OS$MSD 17 MS-DOS
OS$U32 18 Ultrix-32
OS$U16 19 Ultrix-11
--T
------------------------------------------------------------------------
On 10/22/22 6:03 AM, Johnny Billquist wrote:
On 2022-10-22 04:59, Thomas DeBellis wrote:
As we've noted earlier, the operating system
numbers are not
consistent between terminal transport and DAP. Your numbers
correspond to the DAP 5.6 specification as far as it goes, viz:
Value OS Type
0 Illegal
1 RT-11
2 RSTS/E
3 RSX-11S
4 RSX-11M
5 RSX-11D
6 IAS
7 VAX/VMS
8 TOPS-20
9 TOPS-10
10 RTS-8
11 OS-8
12 RSX-11M+
13 COPOS/11 (TOPS-20 front-end)
Right.
I wish I hadn't sent out my last email
because P/OS was staring me
right in the face... I don't recall there being any COPOS/11 on any
Tops-20 front end. The master DTE ran RSX20F, the RJE ran DN60 code
and the Phase III DN20's ran what I thought was called "MCB".
The "TOPS-20 front-end" was a bit of news to me. Makes me more curious...
And yeah, P/OS was in my list. Right after COPOS/11. You should have
read one more line. :-)
The Tops-20 DAP library has the following
operating system numbers
which partly correspond to yours. By this, I mean they are table
offsets which are used to pick the default mode. Assuming the following:
.OSRT==1 ;RT-11
.OSRST==2 ;RSTS/E
.OSRXS==3 ;RSX-11S
.OSRXM==4 ;RSX-11M
.OSRXD==5 ;RSX-11D
.OSIAS==6 ;IAS
.OSVAX==7 ;VAX/VMS
.OSTP20==10 ;TOPS-20 (^D8)
.OSTP10==11 ;TOPS-10 (^D9)
.OSOS8==12 ;OS-8 (^D10)
.OSRXP==13 ;RSX11-M PLUS (^D11)
It would appear that there is a conflict in the list in the PDP-8
entries and RSX-11M+. If MIM:: is reporting decimal 11 (octal 13),
the right thing from my list, then it is reporting itself as a PDP-8
running OS-8 according DAP 5.6.
So... go with what MIM:: says, not what is documented?
I don't get this. The documentation says RSX-11M-PLUS is 12, the code
in RSX itself says it's 12. The only thing disagreeing is your list in
TOPS-20.
Johnny