On 2026-04-10 16:36, Paul Koning wrote:
On Apr 10,
2026, at 3:39 PM, Terri Kennedy <terri-hecnet(a)glaver.org>
wrote:
I definitely had disk block addressing go wonky* in a late V9.x
release. Diagnostics detected a bad FPP and after I replaced it,
RSTS/E (the OS and utilities part, not just user apps) was happy
again.
You mean file system troubles with a bad FPP that went away when the
FPP was fixed? That's very curious, because I know for certain that
there are no FPP instructions anywhere except context switching.
Yup. In fact, Fred Knight was down here at the time on other
RSTS/E business with me and saw it too.
Did the
change from CSPCOM to actual BP2 for CUSPs drag in some
FP stuff? That shouldn't have affected the monitor, though. I'll
need to go look in the FIP source code...
Probably not because those CUSPs had to run on no-float machines.
Yup. And unlike Ultrix-11 (if you've been following the VCFED
thread) it doesn't do stuff like install a mishmash of I&D and
non-I&D binaries on an 11/40 without I&D, and apparently there's
an assumption about Supervisor Mode somewhere in the Ultrix-11
kernel as well. Bob Supnik wrote a small treatise "Bug, Feature,
or Code Rot? Adventures in OS Debugging" where he mentions that
late-era DEC operating systems may never have been tested on
"supported" hardware that was no longer available to the devel-
opers, nor clean installs being done as customers just did up-
grades. One of the reasons Fred would visit is I could put to-
gether just about any bizarre combination of hardware. The "swap
a unit plug between drives on different MSCP controllers causes
a crash" was diagnosed at my place, because I was willing to
put four UDA50s in an 11/44 with 16 RA81s, four on each con-
troller.
** If I were
ever going to do a RDS 2, these fields would all be
made larger so that tiny files don't take up a whole 64 blocks.
RSTS addresses file system elements by 16 bit "device cluster"
numbers. The device cluster size for a given disk is the smallest
power of two such that the number of device clusters fits in 16 bits.
True for the most part. Better to say "the _minimum_ cluster
size", as you can initialize an RL02 with cluster size 64 if
you want.
The largest DCS is 64 for reasons having to do with
how this stuff is
encoded in various places (it could allow 128 if someone really wanted
it) so the max device size is 2^22 blocks. That means an RA73 just
barely fits within the limit, and anything larger would not work.
Let's not do the stuff like RT-11 did with putting extension
bits in unrelated parts of a data structure because that's where
the unused space was. Although RT-11 finally did give up and
added .DATE4 rather than trying to shoehorn post-Y2K dates into
the existing .DATE.
The trick with a hypothetical RDS 2 is it still has to look
enough like classic RDS 1.x to not break things with assumptions
about cluster size (or even the cluster concept entirely). User
applications "shouldn't" notice (but might require re-linking,
which would imply dealing with things like the Fortran-11 OTS)
but a bunch of stuff in the RSTS/E kit would need to be re-done.
Not just stuff like $DSKINT but even BACKUP. Though I do need
to get into that anyway, as multi-volume tape support is wonky.
BACKUP will tell you "Some data is missing for file xxxxxx.xxx"
at the end of one tape, but that file and several prior files
are on the next tape. And you can't just copy a saveset (with
the default 28K block size) to disk because RMS will refuse to
create a record with a block size that big. So currently it's a
trip through VMS to copy the individual volumes to disk (which
results in one large file containing the individual volumes),
then copy that back to tape and restore it on the RSTS/E system.
But you still get the "Missing data" error on the volume breaks.
OTOH, the saveset I have that exhibits this behavior was writ-
ten on an RQZX1, and that board was never fully debugged before
it shipped (I tried, but got overruled, as did Vernon - at least
they used my re-worded menu code and not the horribly botched
German->English translation ROI gave them). Which reminds me,
I have the source for the PDP-11 code the RQXZ1 gives you when
you boot from the phantom unit for setup. It's on a DSP3105 w/
a bad logic board, but there are enough other goodies on there
that I should try to resurrect it - I just need to get Dave a
replacement logic board from somewhere.
The disk drivers actually take 24 bit block numbers,
and file I/O also
uses 24 block numbers just in case you have a crazy large file. RSTS
got "large file" support, meaning more than 64k blocks, quite early
on, I'm not quite sure when. Not in V4 I think, even though it
supported the RP03, but probably soon after.
There's a bunch of mappings which will go from 512-byte LBN
to the appropriate C/H/S for a "classic" drive, or just pass
the LBN in the case of MSCP. I don't know why RSTS/E would use
the FPP if present to do 24-bit math - it isn't _that_ hard to
do math when treating two 16-bit words as a 32-bit value, as
long as you have enough free general registers or are willing
to PUSH/POP to get them.
It is certainly possible that the FPP problem also triggered
issues with non-FP instructions, even though the basic diagnos-
tics for the 11/70 all passed. As they say, "Never test for a
condition you don't know how to handle" (or never expected).
Also, "passes diagnostics" or "fails diagnostics" is no in-
dication if an operating system will fail (or work) - SIMH
(at least the version used for the PiDP-11) fails just about
every 11/70 diagnostic, but still runs operating systems just
fine.
The FP11-C is an interesting beast as it is asynchronous to
the CPU, unlike the FP11-B which ran in lock-step.
I wonder if
that was added in anticipation of the PDP-11/74
(the CIS one, not the renamed 11/70MP).
Probably. I remember that machine sitting just across the lab from
ARK, the main RSTS development machine, and I believe the COBOL-11
team was just down the hall from the RSTS cubicles.
I agree. There was no point in using CIS on the 11/23 and
/24.
Did they have the automated "lights off" when you were there?
I remember many an evening phone call with RSTS folks which
would be interrupted by "bleep-it, I have to go turn the lights
back on".