In article by A. P. Garcia:
> Warren,
>
> I've been looking at the Henry_Spencer_v7 tar, and something
> is puzzling me. lines 49-54 of /usr/src/libc/gen/crypt.c are
> the following:
>
> static char PC1_D[] {
> 63,55,47,39,31,23,15,
> 7,62,54,46,38,30,22,
> 14, 6,61,53,45,37,29,
> 21,13, 5,28,20,12, 4,
> };
>
> That wasn't legal syntax, was it? There should be an '='
> between [] and {, as in the rest of the file, no?
I just tried to compile the code with the V7 compiler and it complained.
Maybe it was legal in V6 and they used the .o file from there and didn't
recompile it.
I think Dennis is on the list, maybe he can answer the intruiging question!
> Btw, it's neat to look at this code alongside the DES standard:
> http://csrc.nist.gov/publications/fips/fips46-3/fips46-3.pdf
> Phil Garcia
Yes, it certainly is.
Thanks Phil.
Warren
As Billquist, Wilson and others pointed out, the first
versions of Unix did run on machines with no memory
mapping or protection, and indeed context-switching
was accomplished by swapping. By 1973 we had the luxurious
11/45, to considerable relief.
I'm not positive about the logo on our first PDP-11.
On the earliest handbook I have, the front panel photo
just shows "PDP11", though inside the handbook
it does talk about the two models (11/10 and 11/20).
Both had the same KA11 processor, but the basic
11/10 sported 1024Kw ROM memory plus a generous
128 words of RAM, while the 11-20 had
4096Kw core RAM, and the ASR33 Teletype was included.
You could add more RAM to the 11/20.
Incidentally, the machine's handbook was a wonder.
In 104 pages (each 5.25x8 inches), it described the whole
system: not only the instruction set but the theory
of the Unibus (including some logic diagrams) together with
programming specifications for the TTY, the clock,
and the paper tape reader.
Dennis
Hi -
A few days ago the "getty plays parity games" topic came up
again.
I've been thinking about it and looked at the kernel a bit more.
7e1 is rather firmly in place and I'm not sure turning the 'console'
(kl/dl) driver into a "LITOUT only" one is a 100% correct way to
go (the other drivers such as dz, dh, etc remain 7e1 output by
default).
Here's a patch for getty/main.c which I think will do what's
wanted without having to modify the kernel:
------------snip-------------
*** main.c.dist Mon Sep 9 16:52:24 2002
--- main.c Mon Sep 9 16:56:55 2002
***************
*** 384,391 ****
c = cc;
c |= partab[c&0177] & 0200;
! if (OP)
! c ^= 0200;
if (!UB) {
outbuf[obufcnt++] = c;
if (obufcnt >= OBUFSIZ)
--- 384,401 ----
c = cc;
c |= partab[c&0177] & 0200;
! /*
! * If "any" parity do nothing otherwise set even parity unless OP is
! * set. Since 'ap' is set in the "default" entry of /etc/gettytab this
! * has the effect of disabling parity on output without having to change
! * the kernel.
! */
! if (!AP) {
! c |= partab[c & 0177] & 0200;
! if (OP)
! c ^= 0200;
! }
!
if (!UB) {
outbuf[obufcnt++] = c;
if (obufcnt >= OBUFSIZ)
--------------snip---------------
What this does is check the "AP" (AnyParity) flag from /etc/gettytab
and if NOT set then do the 'even' (or 'odd' if OP is set) parity.
Since 'ap' is present in the default line of /etc/gettytab the above
block effectively becomes a no-op unless /etc/gettytab is explicitly
set for 'ep' or 'op'.
If someone could test this and report back I'd appreciate it.
Thanks.
Steven Schultz
sms(a)2bsd.com
Is there a description anywhere of how C was originally bootstrapped?
I'm sure it was nothing unconventional, but the question of how you
bring up compilers for other languages which are implemented in their
own language seems to mystify some people to the extent that they
argue that the compiler must be written in C (which is `always
there'), and I thought it would be good to have the real story about C
to tell them.
Thanks
--tim
Hi,
> Currently when I boot, I start off with my terminal set to 19,200 baud
> 8-N-1 but once BSD has booted I have to switch to 19,200 7-E-1
The hardware runs on 8-bit clean channels. Most UNIX kernels
kinda prefer to use 7e1 or 7o1.
> Can anyone tell me why this is happening and how I fix it so
> the setting remains on 8-N-1? (stty?)
Once you're logged in to the system, type "stty -parenb bits8" or
"stty -parenb cs8" or "stty -parenb 8" to go back to 8-bit mode.
Then reset your terminal program again :)
> Also, if I can't fix this, will vtserver/vtc run on 7-E-1 comms?
Nope. VTc requires an 8-bit clean channel (for now).
--fred
> Dennis Ritchie wrote:-
>
> Early on, for fun, we tried assembling the DEC-supplied
> assembler, which came on at least one (maybe more) long
> fan-folded paper tapes. I don't think we ever succeeded; it had to
> be fed in twice for the two passes, and enough characters
> were dropped that phase errors occurred.
The early high speed tape readers used the clock pulse off the stepper motor
(with suitable delay) to strobe the data from the photo-transistors. It
was somewhat unreliable. Latter models added a ninth detector under the sprocket
holes, which being smaller, neatly strobed the data in the middle of the punched
data.
The 11/20 I first used only had the paper tape software. The pdp-11 instruction
set (at that point) was nicely orthogonal, so we often hand coded patches rather
than use the assembler/editor, since it was faster.
Hi,
I've managed to get a BSD 2.11 root filesystem onto my 11/73 via VTserver
and I am preparing to use vtc to transfer the /usr components.
Currently when I boot, I start off with my terminal set to 19,200 baud
8-N-1 but once BSD has booted I have to switch to 19,200 7-E-1
Can anyone tell me why this is happening and how I fix it so the setting
remains on 8-N-1? (stty?)
Also, if I can't fix this, will vtserver/vtc run on 7-E-1 comms?
Toby
Johnny Billquist <bqt(a)update.uu.se> wrote:
> > It is a problem only if you choose to honor copyright laws. Since that is
> > your personal voluntary choice, it is your problem.
>
> Yes, and it's *that* problem I'm looking for a solution to.
But since you've created that problem for yourself by your own voluntary choice
to honor copyrights, you shouldn't be asking others for a solution.
> Freed as in "legally freed", or just "made available".
Legally by whose law? It is legal by the Law of Hammurabi, King of Babylon by
the way of Anu, Enlil, and Marduk. [1]
> harhan.org don't exist from where my dns is looking... :-/
It sure exists:
Registrant:
Harhan Computer Operation Facility (HARHAN-DOM)
786 E MISSION AVE APT F
ESCONDIDO, CA 92025-2154
US
Domain Name: HARHAN.ORG
Administrative Contact, Technical Contact:
Sokolov, Michael (MS35906) msokolov(a)IVAN.HARHAN.ORG
The Harhan Network
786 E MISSION AVE UNIT F
ESCONDIDO, CA 92025-2154
US
+1-760-480-4575 +1-760-747-1493
Record expires on 17-Feb-2004.
Record created on 17-Feb-2000.
Database last updated on 4-Sep-2002 16:59:12 EDT.
Domain servers in listed order:
IVAN.HARHAN.ORG 208.221.139.1
IFCTFVAX.HARHAN.ORG 208.221.139.2
> Another machine I have access to managed to resolve ivan.harhan.org to
> 208.221.139.1,
Correct.
> but there is no response at that address.
Maybe my outside link was down then, try again.
> However, if it is just the sources, and not some legal notes available,
> then I don't need to go there.
The new laws I've made for this planet haven't been posted yet, but they soon
will be.
MS
[1] Lofty Anu, lord of the gods
who from Heaven to Earth came,
and Enlil, lord of Heaven and Earth
who determines the destinies of the land,
Determined for Marduk, the firstborn of Enki,
the Enlil-functions over all mankind;
Made him great among the gods who watch and see,
Called Babylon by name to be exalted,
made it supreme in the world;
And established for Marduk, in its midst,
an everlasting kingship.
Dave Horsfall:
AFAIK, Unix never ran on the 11/20 (no MM unit); did you mean a DEC-20?
I don't know if it was called an 11/20 at the time (I seem to recall
some model-number upheaval in the early days of the -11), but the first
PDP-11 UNIX system was certainly one without memory management:
By the beginning of 1970, PDP-7 UNIX was a going concern ... In early
1970 we proposed acquisition of a PDP-11, which had just been introduced
by Digital ... to create a system specifically designed for editing and
formatting text, what might today be called a `word-processing system.'
... During the last half of 1971, we supported three typists from the
Patent Department, who spent the day busily typing, editing, and formatting
patent applications, and meanwhile tried to carry on our own work. UNIX
has a reputation for supplying interesting services on modest hardware,
and this period may mark a high point in the benefit/equipment ratio;
on a machine with no memory protection and a single 0.5-MB disk, every
test of a new program required care and boldness, because it could easily
crash the system, and every few hours' work by the typists meant pushing
out more information onto DECtape, because of the very small disk.
The experiment was trying but successful. Not only did the Patent
Department adopt UNIX, and thus become the first of many groups at the
Laboratories to ratify our work, but we achieved sufficient credibility
to convince our own management to acquire one of the first PDP-11/45
systems made.
Dennis M. Ritchie, Evolution of the UNIX Time-Sharing System; AT&T Bell
Labs Technical Journal, Vol. 63 No. 8 Part 2, October 1984.
Maybe Dennis will chime in with further memories.
Certainly there's nothing odd about UNIX running without memory protection,
though, especially in that era. The PDP-7 had none. The trick was that
every context switch was also a swap. The scheme was revived in the late
1970s for the early, no-memory-map versions of the LSI-11 (called LSX and
later Mini-UNIX; paper by Lycklama et al in the 1978 all-UNIX BLTJ, I believe).
I suppose next some whippersnapper will express disbelief that UNIX
could have run on a system with no Ethernet interface. You mean there
was life before 10BaseT, spam, and pornographic web sites?
(Not, to be fair, that Dave Horsfall is a whippersnapper.)
Norman Wilson
Toronto ON
(Still on the shelf, but crawling toward the edge)
> From: Dennis Ritchie <dmr(a)plan9.bell-labs.com>
> Subject: [pups] Unix and PDP11/20 (was PDP9?)
> Date: Fri, 6 Sep 2002 02:08:02 -0400
>
> Holden's link,
>
> http://www.psych.usyd.edu.au/pdp-11/11_20.html
>
> reinforces my guess that our first -11 probably did
> have just "PDP11" on the bezel. The one in my photo
> (which has the 20) is doubtless our second -11.
> I've looked at this page before, but it slipped my mind.
>
> Our first -11 was very early, and its disk took several
> months to arrive: it had TTY33 and high-speed paper tape
> as its only peripherals besides the clock.
>
> Early on, for fun, we tried assembling the DEC-supplied
> assembler, which came on at least one (maybe more) long
> fan-folded paper tapes. I don't think we ever succeeded; it had to
> be fed in twice for the two passes, and enough characters
> were dropped that phase errors occurred.
I was there once myself. The problem was fuzzy holes in the DEC-punched
fan-fold paper tape. So I toggled in a small utility program
"wait, read, wait, punch, loop" to copy from the TTY reader to the
high-speed punch. The sensing pins of the TTY had no trouble with the
fuzzy holes, and I got paper tapes that worked in the high-speed reader.
carl
--
carl lowenstein marine physical lab u.c. san diego
clowenst(a)ucsd.edu