On Mon, Oct 10, 2022 at 4:49 PM Michael Casadevall <michael(a)casadevall.pro>
wrote:
There are SCCS references in the code from 78/79, references to the V7 CC
compiler and updates.
The 'V7 compiler' is 'Typesetter C' - it was released two
compiler DWB on
V6.
SCCS had a interesting life.
SCCS was introduced publicly with PWB,
Indeed.
which is why I suspect it might have been used.
It might have been at MIT (it was a UCB and CMU BTW) - but I believe Al
Nemeth - while it might have been a person disk, -- I'm pretty sure BBN
would have tried to kept those bits out of the building. - certainly out of
the mainstream of any project -- you see in the directories foo.c and
foo.c~ files -- this was typical of the day. If you were using SCCS less
you would see a lot more evidence in the trees (again look at the UCB trees
- you can see once Ken brought it to UCB, wnj started to use it).
The code also uses some C syntax the stock compiler
dislikes
(specifically, it was unhappy register in the function declaration).
As I said -- I suspect the typesetter compiler by then. If userspace code
is using <stdio.h> and linking libS.a not Mike Lesk's portable I/O
library that's a huge clue also BTW. But Dennis did a lot of work to the
compiler in the DWB timeframe. A number of language features were added,
he changed the syntax of things like =+ to += and the like. This is why
code that targets the Typesetter C compiler has a very difficult time going
back to the V6 (or basic PWB 1.0) compilers. As I said in the other
message, this was the compiler he and Brian describe in the book - also
note a couple of us here reviewed different editions of it.
I suspect what you need is the original DWB 1.0 release that includes the
'typesetter' compiler -- that will bootstrap on a V6 system and will create
a v6 compiler. I'm not sure we have that in the archives. I think we have
the later PWB 2.0 release - that comes without the compiler.
Beside the startup code (which is in mch.c and uses a preprocessor macro),
is there anything specific gotchas in regards to
models? I tried building
CPU40 and CPU70, and configuring simh, just to eliminate that gotcha, but
the only difference seems to be early initialization code ...
Quick glance is that BBN was running a 45 - so I'd build for that to
start. 45s and 70s's are more similar but not exactly the same. Don't
build for a 40. They are quite different.
Set simh up as a 45 and see if that just works.
If not .... then I would drop back and pull everything out to as simple a
UNIX as possible... since it's a v6 system without any of the networking
-- as much line Ken and Dennis as you can. Configure that a 40 and follow
Dennis's and Ken's instructions (which for v6 is a a 40) -- get that to
boot and a simh based 40. Then reconfigure as a simh based 45 and make
that work. Then and only then turn on the BBN stuff.
Feel free to send me email off line and I can try to help a little. Note:
I have not played with a 45 in years. But I ran V5, V6. and V7 on 40s, 45
and 70s back in the day. I have a PiDP 11/70 behind me so modulo being way
to busy, I can try to help a little.
ᐧ