The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] nm on Third Edition .o files?'
@ 2016-12-20 13:05 Noel Chiappa
  2016-12-20 15:49 ` Clem Cole
  0 siblings, 1 reply; 20+ messages in thread
From: Noel Chiappa @ 2016-12-20 13:05 UTC (permalink / raw)


    > From: Tony Finch

    > when did C get its cast operator?

Well after that piece of code was written! :-)

I don't recall exactly off the top of my head, but I recall 2-3 notes to
users about the evolution of C post 'vanilla' V6; I think a lot of it was
related to work being done on typetting stuff, hence the moniker
'phototypsetter compiler' which was applied to that 'improved' C. 

One of the notes is fairly common, but another I have only in hardcopy
(although I scanned it at one point).

I'll try and turn all of them, along with some notes I made about the
differences between 'vanilla' V6 C and 'phototypsetter C' (which a lot of the
later V6 users started with - I certainly did), into an article on the
Computer History wiki on the early evolution of C.

	Noel


^ permalink raw reply	[flat|nested] 20+ messages in thread
* [TUHS] nm on Third Edition .o files?'
@ 2016-12-20 20:01 Noel Chiappa
  2016-12-21 10:34 ` Tony Finch
  0 siblings, 1 reply; 20+ messages in thread
From: Noel Chiappa @ 2016-12-20 20:01 UTC (permalink / raw)


    > More here:
    >   http://minnie.tuhs.org/pipermail/tuhs/2014-October/005218.html

Which sez:

  There is a second document, untitled, no date, which I have not been able to
  locate online at all.
  ..
  From the content, it seems to be from shortly after the previous one, so say,
  circa 1977.

I poked around in a dump of the CSR Unix which I now have available to me, and
found a copy of it. I just checked the Internet (using the canonical search
engine) for various phrases from it, but I still could not turn it up. So,
here it is in machine-readable form:

  http://ana-3.lcs.mit.edu/~jnc/history/unix/CChanges.txt

Hope this is some use to someone... :-)

	Noel


^ permalink raw reply	[flat|nested] 20+ messages in thread
* [TUHS] nm on Third Edition .o files?'
@ 2016-12-20 18:44 Noel Chiappa
  2016-12-20 23:40 ` Ron Natalie
  0 siblings, 1 reply; 20+ messages in thread
From: Noel Chiappa @ 2016-12-20 18:44 UTC (permalink / raw)


    > From: "Ron Natalie"

    > At some point .. and the ability to assign/pass structures got
    > supported, though I thought that was the compiler that came with V7.

That is my vague recollection too.

    > I'm still annoyed they didn't fix arrays when they fixed structs.

Which aspect? The ability to assign/pass/return arrays, or the funky way that
array naming worked (I'm trying to remember the details, I think it was
something to do with 'arrays' passed as arguments - it was actually a pointer
that was passed, but the declaration didn't have to say 'pointer').

	Noel


^ permalink raw reply	[flat|nested] 20+ messages in thread
* [TUHS] nm on Third Edition .o files?'
@ 2016-12-20 14:15 Noel Chiappa
  0 siblings, 0 replies; 20+ messages in thread
From: Noel Chiappa @ 2016-12-20 14:15 UTC (permalink / raw)


PS:

    > I recall 2-3 notes to users about the evolution of C post 'vanilla' V6
    > ...
    > One of the notes is fairly common, but another I have only in hardcopy
    > (although I scanned it at one point).

More here:

  http://minnie.tuhs.org/pipermail/tuhs/2014-October/005218.html

If anyone knows of any other documentation of C evolution, I'd be interested
in hearing about it for the Computer History wiki page.

	Noel



^ permalink raw reply	[flat|nested] 20+ messages in thread
* [TUHS] nm on Third Edition .o files?
@ 2016-12-19 21:33 Noel Chiappa
  2016-12-20 12:24 ` Tony Finch
  0 siblings, 1 reply; 20+ messages in thread
From: Noel Chiappa @ 2016-12-19 21:33 UTC (permalink / raw)


    > From: "Steve Johnson"

    > The number on the left is a PDP-11 address, probably for some kind of
    > control register.

It's the Processor Status Word, which contained the CPU's hardware priority
level, condition codes, etc.

    > That's a construction that's left over from B.

I wonder why it was written as "0177776->integ", rather than "*017776"?
Probably the former allowed the C compiler to work out what size the operand
was. (BTW, 'integ' was declared in a structure declaration as follows:

    struct {
	int	integ;
    };

(Did the code looked at actually say "0177776->int"? The compiler might have
barfed on a reserved keyword being used like that.)

       Noel


^ permalink raw reply	[flat|nested] 20+ messages in thread
* [TUHS] nm on Third Edition .o files?
@ 2016-12-19 19:47 Diomidis Spinellis
  2016-12-19 20:33 ` Steve Johnson
  0 siblings, 1 reply; 20+ messages in thread
From: Diomidis Spinellis @ 2016-12-19 19:47 UTC (permalink / raw)


Has anyone got a setup where they can run something like nm(1) on the 
compiled Third Edition Unix C files and send me the output? 
(Alternatively, just send me the .o files, and I'll whip up something to 
read their symbols.)  I tried to compile the source code on a modern 
system by hacking old C to something closer to what GCC will accept, 
with commands such as the following.

cc -E dp.c |
sed 's/=\([&|+-]\)/\1=/g;s/struct[ \t]*(/struct {/' |
gcc -w -x c -

However, I stumbled on the use of structure fields on things that aren't 
structures, e.g. "0177776->int =| 300"


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2016-12-21 10:34 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-12-20 13:05 [TUHS] nm on Third Edition .o files?' Noel Chiappa
2016-12-20 15:49 ` Clem Cole
2016-12-20 16:04   ` Ron Natalie
2016-12-20 16:09     ` Larry McVoy
2016-12-20 16:21       ` Clem Cole
2016-12-20 16:23         ` Ron Natalie
2016-12-20 16:26           ` Larry McVoy
2016-12-20 20:23         ` Steve Johnson
2016-12-20 20:30           ` Clem Cole
  -- strict thread matches above, loose matches on Subject: below --
2016-12-20 20:01 Noel Chiappa
2016-12-21 10:34 ` Tony Finch
2016-12-20 18:44 Noel Chiappa
2016-12-20 23:40 ` Ron Natalie
2016-12-20 14:15 Noel Chiappa
2016-12-19 21:33 [TUHS] nm on Third Edition .o files? Noel Chiappa
2016-12-20 12:24 ` Tony Finch
2016-12-19 19:47 Diomidis Spinellis
2016-12-19 20:33 ` Steve Johnson
2016-12-19 20:49   ` Diomidis Spinellis
2016-12-19 21:03   ` Michael Kjörling

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).