> 10-36-55.pdf user-mode programs: pool game
This game, written by ken, used the Graphic 2. One of its
earliest tests--random starting positions and velocities on
a frictionless table with no collision detection--produced
a mesmerizing result. This was saved in a program called
"weird1", which was carried across to the PDP11.
Weird1 was a spectacular accidental demonstration of structure
in pseudo-random numbers. After several minutes the dots
representing pool balls would evanescently form short local
alignments. Thereafter from time to time ever-larger alignments
would materialize. Finally in a grand climax all the balls
converged to a single point.
It was stunning to watch perfect order emerge from apparent
chaos. One of my fondest hopes is to see weird1 revived.
Doug
Some time ago, I wrote a piece [1] about the design of the AT&T
assembler syntax. While I'm still not quite sure if everything in there
is correct, this explanation seemed plausible to me; the PDP-11
assembler being adapted for the 8086, then the 80386 and then ELF
targets, giving us today's convoluted syntax.
The one thing in this chain I have never found is an AT&T style
assembler for x86 before ELF was introduced. Supposedly, it would get
away without % as a register prefix, thus being much less obnoxious to
use. Any idea if such an assembler ever existed and if yes where?
I suppose Xenix might have shipped something like that.
The only AT&T syntax assemblers I know today are those from Solaris,
the GNU project, the LLVM project, and possibly whatever macOS ships.
Are there (or where there) any other x86 AT&T assemblers? Who was
the first party to introduce this?
Yours,
Robert Clausecker
[1]: https://stackoverflow.com/a/42250270/417501
--
() ascii ribbon campaign - for an 8-bit clean world
/\ - against html email - against proprietary attachments
Some time ago, I wrote a piece [1] about the design of the AT&T
assembler syntax. While I'm still not quite sure if everything in there
is correct, this explanation seemed plausible to me; the PDP-11
assembler being adapted for the 8086, then the 80386 and then ELF
targets, giving us today's convoluted syntax.
The one thing in this chain I have never found is an AT&T style
assembler for x86 before ELF was introduced. Supposedly, it would get
away without % as a register prefix, thus being much less obnoxious to
use. Any idea if such an assembler ever existed and if yes where?
I suppose Xenix might have shipped something like that.
The only AT&T syntax assemblers I know today are those from Solaris,
the GNU project, the LLVM project, and possibly whatever macOS ships.
Are there (or where there) any other x86 AT&T assemblers? Who was
the first party to introduce this?
Yours,
Robert Clausecker
[1]: https://stackoverflow.com/a/42250270/417501
--
() ascii ribbon campaign - for an 8-bit clean world
/\ - against html email - against proprietary attachments
Robert Clausecker <fuz(a)fuz.su>wrote:
> The one thing in this chain I have never found is an AT&T style
> assembler for x86 before ELF was introduced.
There were alot of AT&T codebase ports to x86 architecture except Xenix:
Microport, INTERACTIVE, Everex, Wyse e.t.c. using AT&T x86 syntax.
I've tried Microport SystemV /386 (SysV R3.2). It uses COFF
as format for executables:
See:
http://www.vcfed.org/forum/showthread.php?67736-History-behind-the-disk-ima…
(Rather interesting kernel ABI/Call convention)
and
https://gunkies.org/wiki/Unix_SYSVr3
There were also SystemV R2 to i286 ports i.e.:
https://gunkies.org/wiki/Microport_System_V
with a.out binary format.
Bother:
Here's a good pictore of G R herself, with what I believe to be at
least a second-generation badge.
Forgot to paste in the URL. Here it is:
http://www.peteradamsphoto.com/g-r-emlin/
Mary Ann Horton:
I'm enjoying bwk's book very much, but it has me wondering. There are
two stories I've heard that supposedly occurred at Murray Hill, but he
didn't include them.
====
You can't expect every story to be there. The book would be too
heavy to lift!
Could the `monkey picture on a badge' story be that of G. R. Emlin's
badge? She was a gremlin doll, not a monkey, but it would be
reasonable to mistake the former for the latter.
Here's a good pictore of G R herself, with what I believe to be at
least a second-generation badge. The original badge was an old-style
Bell Labs one with a green border; I forget whether that meant
contractor or something else, but a regular MTS badge was blue-bordered
at the time.
Norman Wilson
Toronto ON
> What is the special meaning of using / as directory partition in UNIX? And \ as the escape character.
\ came from Multics. The first day Multics ran at Bell Labs Bob Morris
famously typed backslash-newline at the login prompt and crashed the
system.
Multics had a hierarchical file system, too, but I don't recall how
pathnames were punctuated.
Doug
> From: Charles Anthony
>> I think it was >user_dir_dir>Group>User, wasn't it?
> user_dir_dir>Project>User
Oh, right. Too many years spent on Unix! :-)
> "Names" are aliases, similar to soft links
I feel like they are more similar to hard links; they belong to a segment, and
if the name is given to another segment, and the original segment has only
that name, it goes away. (See the discussion under "add_name" in the MPM
'Commands and Active Fuinctions'). Also, Multics does real soft links (too),
so names can't be soft links! :-)
Noel
My talk has been posted.
https://youtu.be/FTlzaDgzPY8
Thanks to everyone who helped make it better.
Warner
P.s. this may be a duplicate email... I had domain issues when I sent it
before...
> From: Charles Anthony
> /home/CAnthony
I think it was >user_dir_dir>Group>User, wasn't it? I seem to remember my
homedir on MIT-Multics was >udd>CSR>JNChiappa?
And I wonder if the 'dd' directory on PDP-7 Unix owe anything to 'udd'?
Getting back to the original query, I'm wondering if '/' was picked
as it wasn't shifted, unlike '>'?
Noel
On Mon, 21 Oct 2019, Andrew Hume wrote:
> the gt40??? oh my lord! good job i am en route to the bell labs 50th
> anniversary.
> its been a long time since i heard the name “Dave Horsfall”!
Yep :-) Although now retired, I'm still active in Unix projects.
-- Dave
I was about to add a footnote to history about
how the broad interests and collegiality of
Bell Labs staff made Space Travel work, when
I saw that Ken beat me to telling how he got
help from another Turing Award winner.
> while writing "space travel,"
> i could not get the space ship integration
> around a planet to keep from either gaining or
> losing energy due to floating point errors.
> i asked dick hamming if he could help. after
> a couple hours, he came back with a formula.
> i tried it and it worked perfectly. it was some
> weird simple double integration that self
> corrected for fp round off. as near as i can
> ascertain, the formula was never published
> and no one i have asked (including me) has
> been able to recreate it.
If I remember correctly, the cause of Ken's
difficulty was not roundoff error. It
was discretization error in the integration
formula--probably f(t+dt)=f(t)+f'(t)dt.
Dick saw that the formula did not conserve
energy and found an alternative that did.
All, we had another dozen TUHS suscribers to the list overnight. Welcome.
A reminder that we're here to discuss Unix Heritage, so I'll nudge you
if the conversation goes a bit off-topic.
So I'll kick off another thread. What was your "ahah" moment when you
first saw that Unix was special, especially compared to the systems you'd
previously used?
Mine was: Oh, I can:
+ write a simple script
+ to edit a file on the fly
+ with no temporary files (a la pipes)
+ AND I can change the file suffix and the system won't stop me!
I was using TOPS-20 beforehand.
Cheers, Warren
DMR explained how PDP-7 UNIX was used in "The Evolution of the Unix
Time-sharing System" but having played with it myself, I stumbled in a
couple of cases and found it a bit awkward to use.
Maybe someone (ken and doug?) can shed some light on "elaborate set of
conventions" that dmr mentioned.
My questions are these:
you cannot execute a program if you're in a directory you can't write into.
I asked Warren about this when I first tried pdp7 unix and he
explained it to me: the shell creates a link to the binary and executes
it. If it can't write into the current directory, it fails to create the
link and hence can't execute the program.
How was this handled in practice? did users have write
permissions on all directories? did you just stay in your directory all
the time?
. and ..
Was this introduced first with PDP-11 unix or did the convention
start on the PDP-7 already? It certainly seems to be the case with .
but how about ..? the dd directory seems to take on the role of a sort
of root directory and the now discovered program pd actually creates a
file .. (haven't tried to understand what it does though yet)
What does dd stand for, dotdot? directory directory?
aap
> As noted in the jargon file, the dd(1) syntax is deliberately reminiscent
> of the DD statement in IBM JCL. This was presumably a joke
That is certainly true and reflects its major early usage to
prepare tapes to carry to other systems.
Though I haven't use dit in ages, I recall that the joke was
so fully engtained that the command was more likely to be
written "dd ifile=x ofile=y" than "dd <x >y"
Doug
> From: Abhinav Rajagopalan
> I only now realized that only mknod existed, up until a long time, only
> later on with the GNU coreutils did mkdir as a command come into
> existence.
Huh? See:
https://minnie.tuhs.org//cgi-bin/utree.pl?file=V6/usr/man/man1/mkdir.1
(And probably before that, that was the quickest one to find?)
Maybe that was a typo for 'mkdir as a system call'? (I recall having to do a
fork() to execute 'mkdir', back when.) But 4.2 had mkdir().
Noel
Bakul Shah:
Being an OS student I had read "The Unix Timesharing System" paper by
Ritchie and Thompson and had wanted to use Unix years before I actually
had the chance. I don't remember an "Aha!" moment but I took to it like
a duck to water. Most everything felt just so comfortable and right.
It was very much as I had imagined it to be.
=====
That's more or less what it was like to me. Not so much
an aha! moment, more just a feeling of coming home. It
took a while to understand the different way things worked
in UNIX (I had previously used TOPS-10 for several years)
but as it all sank in it felt more and more right.
C felt the same way. It took me a while to grok the pointer
syntax (I had done a lot of MACRO-10 programming so I certainly
understood the concept, just not how it fit into the higher-
level language), but things like the three-clause condition
in for so that all control for a loop could be in one place
were just magically right.
I don't think I read the CACM paper before I touched UNIX,
but I had read both editions of Software Tools, so my brain
was perhaps pre-seeded with some of the ideas.
Norman Wilson
Toronto ON
> From: Warren Toomey <wkt(a)tuhs.org>
> But wasn't "chdir" built into the PDP-7 Unix shell?
No. See "The Evolution of the Unix Time-sharing System", in section "Process
control".
Also, the old 'cd' had different syntax than today's (since there was no notion
of a pathname in the earliest Unix); it took instead a list of directories (e.g.
"cd dd ken").
Noel
On 10/21/19 9:05 AM, tuhs-request(a)minnie.tuhs.org wrote:
> Message: 17
> Date: Mon, 21 Oct 2019 08:10:00 -0400 (EDT)
> From:jnc@mercury.lcs.mit.edu (Noel Chiappa)
> To:tuhs@minnie.tuhs.org
> Cc:jnc@mercury.lcs.mit.edu
> Subject: Re: [TUHS] What was your "Aha, Unix!" moment?
> Message-ID:<20191021121000.34E3B18C09F(a)mercury.lcs.mit.edu>
>
> > From: Warren Toomey<wkt(a)tuhs.org>
>
> > But wasn't "chdir" built into the PDP-7 Unix shell?
>
> No. See "The Evolution of the Unix Time-sharing System", in section "Process
> control".
>
> Also, the old 'cd' had different syntax than today's (since there was no notion
> of a pathname in the earliest Unix); it took instead a list of directories (e.g.
> "cd dd ken").
>
> Noel
>
Wanna have some fun?
chdir system
then try to find your way back 'home'...
v0's subdirectories suck.
--
GPG Fingerprint: 68F4 B3BD 1730 555A 4462 7D45 3EAA 5B6D A982 BAAF
On the copy of this story that appears here:
http://crash.com/fun/texts/vaxen-dont.html
it is atrributed as such:
'The author of this piece is Jack Harvey, harvey(at)eisner.decus.org, and
it was originally published under the title "The Immortal Murderer" on
January 18th, 1989 on DECUServe, the DECUS member bulletin board.'
--Pat.